-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Add seperate italic, bold and italic + bold font files #4141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
f2d590f to
2183f41
Compare
|
I would also like to see a third or 4th font such that nerd-font icons be displayed and/or a fallback font for missing characters, just a suggestion!
NerdFonts Symbols Onlyhttps://github.com/ryanoasis/nerd-fonts/tree/master/patched-fonts/NerdFontsSymbolsOnly |
|
An option for separate bold and bold+italic fonts would also be nice. |
|
Good suggestions, thought about seperate files for bold, italic fonts aswell, will probably add soon |
a2e18d6 to
99c7b02
Compare
00366b4 to
5af0784
Compare
|
Support for bold and italic + bold fonts has now been added |
|
why not merged yet? |
|
Is there an APK we could use? Text being cut off in a terminal emulator is a severe loss to functionality and would be great if this got merged soon. |
…ameter and intermediate bytes Standard ECMA-48: Control Functions for Coded Character Sets specifies the format of CSI commands. - https://en.wikipedia.org/wiki/ANSI_escape_code#Control_Sequence_Introducer_commands - https://invisible-island.net/xterm/ecma-48-parameter-format.html#section5.4 Previously unsupported bytes would be echoed to the terminal. ```shell $ printf '\x1b[=u' # PF u $ printf '\x1b[=5u' # PPF 5u $ printf '\x1b[=5!u' # PPIF 5!u $ printf '\x1b[=5!%u' # PPIIF 5!0 $ printf '\x1b[=?5!%u' # PPPIIF ?5!0 ``` This fixes a problem with fish shell 4.0.0 which uses that sequence. Closes termux#4338 Co-authored-by: @krobelus <aclopte@gmail.com> Co-authored-by: @agnostic-apollo <agnosticapollo@gmail.com>
`Unrecognized option: --add-exports=java.base/sun.nio.ch=ALL-UNNAMED` Related commit 52da00e
…`6.1` to fix crash on Android 16 QPR1
```
Build fingerprint: 'google/shiba_beta/shiba:16/BP31.250502.008/13497110:user/release-keys'
Revision: 'MP1.0'
ABI: 'arm64'
Executable: /system/bin/app_process64
Cmdline: com.termux
pid: 22617, tid: 22617, name: com.termux >>> com.termux <<<
uid: 10323
tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
esr: 0000000092000006 (Data Abort Exception 0x24)
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x000000000000000c
Cause: null pointer dereference
x0 0000000070b6f798 x1 0000000002159228 x2 000000000000000c x3 00000000ebad6073
x4 00000000ebad6074 x5 00000000ebad6075 x6 00000000ebad6076 x7 00000000ebad6077
x8 00000000ebad6078 x9 00000000ebad6079 x10 00000000ebad607a x11 00000000ebad607b
x12 00000000ebad607c x13 00000000ebad607d x14 00000000ebad607e x15 00000000ebad607f
x16 0000007feda203f0 x17 0000007976776a9c x18 0000007cd0e44000 x19 b400007b850b8be0
x20 0000000000000000 x21 b400007b850b8ca0 x22 0000000000000000 x23 00000000021592b8
x24 000000006413b378 x25 0000000070b99ee0 x26 0000000070b9fc78 x27 0000000000000000
x28 0000000000000053 x29 0000000070b99ee0
lr 0000007976776a98 sp 0000007feda203f0 pc 0000007976776b0c pst 0000000080001000
esr 0000000092000006
26 total frames
backtrace:
#00 pc 00000000000c8b0c /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (org.lsposed.hiddenapibypass.HiddenApiBypass.getDeclaredMethods+780)
termux#1 pc 00000000000c8dc4 /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (org.lsposed.hiddenapibypass.HiddenApiBypass.setHiddenApiExemptions+68)
termux#2 pc 00000000000ae560 /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (com.termux.shared.reflection.ReflectionUtils.bypassHiddenAPIReflectionRestrictions+448)
termux#3 pc 00000000000a342c /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (com.termux.shared.android.SELinuxUtils.getContext+108)
termux#4 pc 00000000000c0b60 /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (com.termux.shared.termux.shell.command.environment.TermuxAppShellEnvironment.setTermuxAppEnvironment+3216)
termux#5 pc 000000000009eafc /data/app/~~p_sHRwZKj3QVf_xeRMrR3g==/com.termux-rodTRD4IY6G2qtCPCrHfhw==/oat/arm64/base.odex (com.termux.app.TermuxApplication.onCreate+1596)
...
termux#22 pc 0000000000105c98 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+104) (BuildId: ea93df5e792bbd2e0cbb71b2a7599aaa)
termux#23 pc 000000000013121c /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+908) (BuildId: ea93df5e792bbd2e0cbb71b2a7599aaa)
termux#24 pc 000000000000459c /system/bin/app_process64 (main+1212) (BuildId: a237cfae6965d7f0b950e5955c73432c)
termux#25 pc 000000000006bb88 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+120) (BuildId: eecb0fc2ec8128ec92c091c0160586d1)
```
Related commit LSPosed/AndroidHiddenApiBypass@9efadf06
Related commit https://android-review.googlesource.com/c/platform/libcore/+/3380841
Related commit https://cs.android.com/android/_/android/platform/libcore/+/0dc31afe
Closes termux#4556
… `ReportInfo` and `TextIOInfo`
Reading `ReportInfo` with `Bundle.getSerializable()` by `ReportActivity` is triggering exception when default algorithm is used for `serialVersionUID` in Termux:API plugin app when error notification created in `ResultReturner.returnData()` by `TermuxPluginUtils.sendPluginCommandErrorNotification()` is clicked.
```
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.termux/com.termux.shared.activities.ReportActivity}: android.os.BadParcelableException: Parcelable encountered IOException reading a Serializable object (name = com.termux.shared.models.ReportInfo)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4280)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4467)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:222)
at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133)
at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2823)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loopOnce(Looper.java:248)
at android.os.Looper.loop(Looper.java:338)
at android.app.ActivityThread.main(ActivityThread.java:9067)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
Caused by: android.os.BadParcelableException: Parcelable encountered IOException reading a Serializable object (name = com.termux.shared.models.ReportInfo)
at android.os.Parcel.readSerializableInternal(Parcel.java:5520)
at android.os.Parcel.readValue(Parcel.java:5038)
at android.os.Parcel.readValue(Parcel.java:4702)
at android.os.Parcel.-$$Nest$mreadValue(Unknown Source:0)
at android.os.Parcel$LazyValue.apply(Parcel.java:4811)
at android.os.Parcel$LazyValue.apply(Parcel.java:4764)
at android.os.BaseBundle.unwrapLazyValueFromMapLocked(BaseBundle.java:446)
at android.os.BaseBundle.getValueAt(BaseBundle.java:426)
at android.os.BaseBundle.getValue(BaseBundle.java:397)
at android.os.BaseBundle.getValue(BaseBundle.java:380)
at android.os.BaseBundle.getValue(BaseBundle.java:373)
at android.os.BaseBundle.getSerializable(BaseBundle.java:1522)
at android.os.Bundle.getSerializable(Bundle.java:1339)
at com.termux.shared.activities.ReportActivity.updateUI(ReportActivity.java:140)
at com.termux.shared.activities.ReportActivity.onCreate(ReportActivity.java:93)
at android.app.Activity.performCreate(Activity.java:9155)
at android.app.Activity.performCreate(Activity.java:9133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1521)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4262)
... 13 more
Caused by: java.io.InvalidClassException: com.termux.shared.models.ReportInfo; local class incompatible: stream classdesc serialVersionUID = -5165426368218339031, local class serialVersionUID = 1
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:652)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1743)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1624)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1902)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1442)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:430)
at android.os.Parcel.readSerializableInternal(Parcel.java:5507)
... 31 more
```
If using release APK with obfuscation enabled, then following exception will be triggered.
```
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.termux/com.termux.shared.activities.ReportActivity}: android.os.BadParcelableException: Parcelable encountered ClassNotFoundException reading a Serializable object (name = I0.a)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3864)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4006)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:111)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2462)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:240)
at android.os.Looper.loop(Looper.java:351)
at android.app.ActivityThread.main(ActivityThread.java:8377)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
Caused by: android.os.BadParcelableException: Parcelable encountered ClassNotFoundException reading a Serializable object (name = I0.a)
at android.os.Parcel.readSerializableInternal(Parcel.java:5113)
at android.os.Parcel.readValue(Parcel.java:4655)
at android.os.Parcel.readValue(Parcel.java:4363)
at android.os.Parcel.-$$Nest$mreadValue(Unknown Source:0)
at android.os.Parcel$LazyValue.apply(Parcel.java:4461)
at android.os.Parcel$LazyValue.apply(Parcel.java:4420)
at android.os.BaseBundle.getValueAt(BaseBundle.java:394)
at android.os.BaseBundle.getValue(BaseBundle.java:374)
at android.os.BaseBundle.getValue(BaseBundle.java:357)
at android.os.BaseBundle.getValue(BaseBundle.java:350)
at android.os.BaseBundle.getSerializable(BaseBundle.java:1451)
at android.os.Bundle.getSerializable(Bundle.java:1144)
at com.termux.shared.activities.ReportActivity.updateUI(ReportActivity.java:136)
at com.termux.shared.activities.ReportActivity.onCreate(ReportActivity.java:89)
at android.app.Activity.performCreate(Activity.java:8397)
at android.app.Activity.performCreate(Activity.java:8370)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1403)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3837)
... 12 more
Caused by: java.lang.ClassNotFoundException: I0.a
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:536)
at android.os.Parcel$2.resolveClass(Parcel.java:5090)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1733)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1624)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1902)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1442)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:430)
at android.os.Parcel.readSerializableInternal(Parcel.java:5096)
... 29 more
Caused by: java.lang.ClassNotFoundException: I0.a
... 38 more
```
Related issue termux/termux-api#762
…NDK_VERSION` env variable for `termux-shared` library
|
Why was this closed? Having italics as a separate font file would be awesome and I don't see this functionality merged into the main repo? Anyway, thanks for working on this! |
|
what software?
…On Thu, Oct 2, 2025 at 3:10 PM Michiel Scholten ***@***.***> wrote:
*aquatix* left a comment (termux/termux-app#4141)
<#4141 (comment)>
Why was this closed? Having italics as a separate font file would be
awesome and I don't see this functionality merged into the main repo?
Anyway, thanks for working on this!
—
Reply to this email directly, view it on GitHub
<#4141 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUWQX2NDNFYZ4ALNKQE66H33VUW3XAVCNFSM6AAAAABNXMUY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTGNRRGM4DMNZQGM>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
|
Primeramente antes de responder necesito me tracuscan al español por qué no
entiendo el inglés.
El jue., 2 de oct. de 2025 10:16 a.m., Princewill4 ***@***.***>
escribió:
… *Princewill4* left a comment (termux/termux-app#4141)
<#4141 (comment)>
what software?
On Thu, Oct 2, 2025 at 3:10 PM Michiel Scholten ***@***.***>
wrote:
> *aquatix* left a comment (termux/termux-app#4141)
> <#4141 (comment)>
>
> Why was this closed? Having italics as a separate font file would be
> awesome and I don't see this functionality merged into the main repo?
>
> Anyway, thanks for working on this!
>
> —
> Reply to this email directly, view it on GitHub
> <#4141 (comment)>,
> or unsubscribe
> <
https://github.com/notifications/unsubscribe-auth/AUWQX2NDNFYZ4ALNKQE66H33VUW3XAVCNFSM6AAAAABNXMUY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTGNRRGM4DMNZQGM>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
—
Reply to this email directly, view it on GitHub
<#4141 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BQ5MIWE43QPR4JQNVLBV5VL3VUXSHAVCNFSM6AAAAABNXMUY5GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTGNRRGQYDSOBXGU>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
closed it cause it has been a year without any sort of notice from the maintainers (so it probably wont be merged), and it also wasnt implemented well. Maybe I will reopen a better version soon so that its on the front page again. |
This adds support for a user-supplied italic font in
~/.termux/font-italic.ttf. If there is no such file, the text will be skewed as before.There was already a pr for this (#2829) which got closed because of merge conflicts.
Closes #711.